﻿using FluentValidation.Attributes;
using Nop.Admin.Models.Common;
using Nop.Admin.Validators.Logistics;
using Nop.Core.Domain.Logistics;
using Nop.Web.Framework;
using Nop.Web.Framework.Mvc;
using System;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;

namespace Nop.Admin.Models.Logistics
{
    [Validator(typeof(LogisticsLocationValidator))]
    public partial class LogisticsLocationModel : BaseNopEntityModel
    {
        public int AddressId { get; set; }
        [NopResourceDisplayName("Admin.Logistics.Location.Fields.Address")]
        public AddressModel Address { get; set; }

        [NopResourceDisplayName("Admin.Logistics.Common.Fields.UpdatedOnUtc")]
        public DateTime? UpdatedOnUtc { get; set; }

        [NopResourceDisplayName("Admin.Logistics.Location.Fields.Rank")]
        [UIHint("DecimalNullable")]
        public decimal? Rank { get; set; }

        [NopResourceDisplayName("Admin.Logistics.District")]
        public int DistrictId { get; set; }
        public string DistrictName { get; set; }

        public int Status { get; set; }
        [NopResourceDisplayName("Admin.Logistics.Common.Fields.Status")]
        public SelectList StatusValues { get; set; }

        public const decimal ReservedRankNumber = 10000m;
    }
}